<html>
<body>
报告 <code>java.util.List</code> 上对 <code>containsAll()</code> 的调用。
<p>
  此方法调用的时间复杂度为 O(n&middot;m)，其中 n 是调用该方法的列表中的元素数，m 是作为形参传递至该方法的集合中的元素数。
  当列表很大时，这可能是一项开销巨大的操作。
</p>
<p>
  该快速修复会将列表包装在 <code>new java.util.HashSet&lt;&gt;()</code> 中，因为从 <code>java.util.List</code> 创建 
  <code>java.util.HashSet</code> 并在 <code>java.util.HashSet</code> 上执行 <code>containsAll()</code> 的所需时间为 O(n+m)。
</p>
<p><b>示例：</b></p>
<pre><code>  public boolean check(List&lt;String&gt; list, Collection&lt;String&gt; collection) {
    // O(n&middot;m) 复杂度
    return list.containsAll(collection);
  }
</code></pre>
<p>在应用快速修复后：</p>
<pre><code>  public boolean check(List&lt;String&gt; list, Collection&lt;String&gt; collection) {
    // O(n+m) 复杂度
    return new HashSet&lt;&gt;(list).containsAll(collection);
  }
</code></pre>
<!-- tooltip end -->
<p><small>2022.1 最新变化</small></p>
</body>
</html>
